char a[2]={'a','b'};没有\0,是一个数组而不是字符串?

来源:百度知道 编辑:UC知道 时间:2024/06/30 12:14:16

是一个数组,不是字符串
C语言中确定一个字符串结束标记为'\0',一个大小为N的字符数组最多能存1个长度为N-1的字符串,加上一个结束标记就是N个了,如果没有结束标记,那就不能当字符串来处理,而只能当数组来处理

是啊,这个是一个字符数组,但是如果:

char a[100];
scanf("%s",a);

就是一个字符串数组了,因为自动给它的后面加了个'\0'。